There is a continuing quest for visual realism in computer entertainment. The two-dimensional surface of a computer display is utilized to display three-dimensional effects. Pixels are made to portray real objects and are used to produce special effects. The image is often composed from textured polygons. A wallpaper, pattern or other effect is applied to the polygons being rendered in the scene. The pixels are derived from rendering three-dimensional data.
In computer graphics, existing texture-rendering techniques map a pixel on a screen (typically using screen coordinates (x, y)) to a polygon, such as a triangle, on a surface in a viewing plane (typically using geometric or surface coordinates (s, t)). The polygon is rasterized into a plurality of smaller pieces called fragments. Each polygon may have information, such as color and/or a normal vector, associated with each vertex of the polygon. To assign a texture (i.e., a color pattern or image, either digitized or synthesized) to a fragment, the fragment is mapped onto a texture map (typically using texture coordinates (u, v)). A texture map represents a type of image, such as stripes, checkerboards, or complex patterns that may characterize natural materials. Texture maps are stored in a texture memory. A texture map comprises a plurality of texels. A texel is the smallest graphical element in a 2-D texture map used to render a 3-D object. A texel represents a single color combination at a specific position in the texture map.
Each texture map has a plurality of associated MIP (multi in parvum) maps, which are abbreviated versions of a full texture map. One of the MIP maps may be selected to provide a suitable resolution for the fragment of the polygon being rasterized. Several techniques exist to interpolate the desired color information from one or more MIP levels. These texel selection techniques are known technology. The final texture color derived from the selected MIP map is applied onto the fragment. The applied texture may be blended with a color already associated with the fragment or polygon.
In computer entertainment, a two-dimensional surface of a computer display is used to display three-dimensional graphics. This is done by supplying information to individual pixels comprising the display. Real objects are portrayed and special effects are used. In order to portray a realistic view of three-dimensional objects, it is necessary to provide a geometrical description of those objects. In order to simplify the description of an object surface, the three-dimensional object is resolved into a representation by polygons. The smooth surface of a curved object is resolved into a faceted surface of polygons. Generally, the polygon used is the triangle. Triangles provide a number of advantages, particularly having vertices which are of necessity co-planar.
Data is collected characterizing points defining vertices of the triangles for rendering a two-dimensional screen image of three-dimensional objects. Each vertex has a local normal, a line projecting perpendicularly from the three-dimensional surface. An eye point is selected relative to a plane of projection. A line from the eye point to the vertex forms an “eye point δ angle” with the local normal, which is resolved into x-z and y-z angles. In effect, the intersection of the line from the eye point through the plane of projection defines the pixels(s) at which the vertex appears in the two-dimensional display.
One prior art special effect is establishing a selected area and creating the effect that is a transparent panel through which the image is seen. One prior art technique blends colors of a selected area with colors whatever is to appear behind them. One special effect that has not been provided in consumer products is 3-D rendering to create a magnifying (or magnifying by a factor of less than one) through an area of interest. An area of interest may be a circle representing a simulated magnifying glass. Some prior art ray tracing systems have provided this effect. However, ray tracing systems are complex and are not usable practically as a viable consumer product due to their expense.